草庐IT

AudioToolBox 解码AAC

全部标签

Android AudioRecord 和 AudioTrack 编解码器选项?

我目前在Android中使用AudioTrack和AudioRecord类。我使用纯PCM数据,但我想知道其他编解码器有哪些选择?来自thispage好像只能用AMR窄带编解码?我目前按如下方式设置音频类:arec=newAudioRecord(MediaRecorder.AudioSource.MIC,11025,AudioFormat.CHANNEL_CONFIGURATION_MONO,AudioFormat.ENCODING_PCM_16BIT,buffersize);atrack=newAudioTrack(AudioManager.STREAM_VOICE_CALL,110

java - Android - 如何将我自己的音频编解码器添加到 AudioRecord?

我目前有一个用于在Android设备上测试音频的环回程序。它使用AudioRecord和AudioTrack从Mic录制PCM音频并从耳机播放PCM音频。代码如下:publicclassRecordextendsThread{staticfinalintbufferSize=200000;finalshort[]buffer=newshort[bufferSize];short[]readBuffer=newshort[bufferSize];publicvoidrun(){isRecording=true;android.os.Process.setThreadPriority(an

android - 如何使用 MediaCodec 类解码 H.264 流

有人要求我在android中显示视频流(流不是来自HTTP),流是原始H.264,在PC中记录和编码,我通过WIFI获取它。获取流后,是否可以使用MediaCodec解码器解码流并显示? 最佳答案 是的。将MediaCodec配置为“video/avc”解码器,并将输出Surface传递给configure()调用。MediaCodecAPI非常低级,并且没有很多可用的示例代码。使用MediaPlayer可能更容易。更新:现在有一堆示例代码here.其中大部分使用Android4.3(API18)功能,但如果您不需要MediaMux

android - 解码流返回 0 值?

我正在尝试下载一个图像,然后将其显示到我的imageView组件。要下载,我必须使用Asyntask并显示进度条来通知用户。问题是在通过循环获取计算的进度值后,我从inputStream获得了0。Log.d("is",""+inputStream.available());//--->willhaveavaluebyte[]buffer=newbyte[contentLenght];while((read=inputStream.read(buffer))!=-1){counter+=read;publishProgress(counter);outputStream.write(bu

android - 是否可以用房间实现实时分页(aac库)?

目前,我正在开发p2p信使应用程序。我们的消息存储在房间数据库中。当我们发送或接收新消息时,我们将其插入到房间数据库中。它起作用了,RecyclerView.AdapterDataObserver中的方法onItemRangeInserted被触发。但是,当数据源丰富最后一页(从数据库中获取最后的数据)时,方法onItemRangeInserted不会被调用。只有在第二次插入数据库后,才会触发此方法。我们使用由room和LivePagedListBuilder实现的默认PositionalDataSource。那么,用它来实时寻呼房间是真的吗?如果是,那可能是什么问题?如果需要一些代码

FFmpeg 音频解码(秒懂)

1.简介解码音频数据,如下图所示,把MP3或者AAC数据解码成原始的数据pcm。 2.流程 2.1在使用FFmpeg API之前,需要先注册API,然后才能使用API。当然,新版本的库不需要再调用下面的方法。av_register_all()2.2构建输入AVFormatContext声明输入的封装结构体,通过输入文件或者流地址作为封装结构的句柄。AVFormatContext*ifmt_ctx=NULL; constchar*inputUrl="test.mp4"; ///打开输入的流 intret=avformat_open_input(&ifmt_ctx,inputUrl,NULL,NU

android - 如何获取视频的视频编解码器属性?

关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭2年前。Improvethisquestion我需要提取编解码器属性,例如从摄像机捕获的视频的比特率帧分辨率文件格式。

从JSON解码的暗示PHP阵列

我正在加载一个JSON阵列并将其解码为PHP数组$jsonfile=file_get_contents('https://www.alphavantage.co/query?function=TIME_SERIES_INTRADAY&symbol=MSFT&interval=15min&outputsize=full&apikey=demo');$jsonarray=json_decode($jsonfile);var_dump($jsonarray);到目前为止,我得到了一个看起来像这样的数组:object(stdClass)#1(2){["MetaData"]=>object(stdCla

java - 如何解码以 Base64 编码的 png 图像并在 ImageView 上查看它?

我的android设备向服务器请求一个png图像。服务器以Base64编码图像并将其发送到我的设备。之后,我将Base64字符串解码为字节数组并使用BitmapFactory.decodeByteArray()制作它的位图图像。当我将图像添加到ImageView中时,我看不到图像。代码见下:JSONObjectparams=resultObject.getJSONObject("params");byte[]decodedImageInBytes=Base64.decode(params.getString("image_one"),Base64.DEFAULT);BitmapmyIm

android - 使用硬件加速 Android MediaCodec 解码器的 native 代码中的访问冲突

我的目标是使用AndroidMediaCodec对视频流进行解码,然后使用输出图像在native代码中进行进一步的图像处理。平台:ASUStf700tandroid4.1.1。测试码流:H.264fullHD@24frm/s在内置Tegra-3SoC的情况下,我指望硬件支持视频解码。在功能上,我的应用程序按预期运行:我确实可以访问解码器图像并妥善处理。但是,我遇到了非常高的解码器CPU负载。在接下来的实验中,进程/线程负载是通过adbshell中的“top-m32-t”测量的。为了从“top”获得可靠的输出,所有4个cpu内核都通过运行几个线程以最低优先级永远循环来强制激活。这可以通过